

package dao;

import entite.Feedback;
import entite.Questionnaire;
import entite.Utilisateur;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.Parameter;
import javax.persistence.PersistenceContext;

@Stateless
public class FeedbackFacade extends AbstractFacade<Feedback> implements FeedbackFacadeLocal {
    
    //Unité de persistence
    @PersistenceContext(unitName = "FeedBackFormPU")
    private EntityManager em;

    /**
     * Getter entity Manager
     * @return entity manager
     */
    @Override
    protected EntityManager getEntityManager() {
        return em;
    }

    /**
     * Constructeur
     */
    public FeedbackFacade() {
        super(Feedback.class);
    }

    @Override
    public List<Feedback> find(Questionnaire questionnaire) {
       return  em.createNamedQuery("findForQuestionnaire")
                .setParameter("questionnaire", questionnaire)
                .getResultList();
    }

    @Override
    public List<Feedback> find(Questionnaire questionnaire, Utilisateur utilisateur) {
        return em.createNamedQuery("findForQuestionnaireUtilisateur")
                .setParameter("questionnaire", questionnaire)
                .setParameter("utilisateur", utilisateur)
                .getResultList();
    }

}
